home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / inet / internet-drafts / draft-ietf-atm-classic-ip-05.txt < prev    next >
Text File  |  1993-10-15  |  39KB  |  953 lines

  1.  
  2.  
  3.  
  4. Network Working Group                                       Mark Laubach
  5. INTERNET DRAFT                              Hewlett-Packard Laboratories
  6. Expires April 14, 1994                                  October 14, 1993
  7. <draft-ietf-atm-classic-ip-05.txt>
  8.  
  9.  
  10.  
  11.  
  12.  
  13.                      Classical IP and ARP over ATM
  14.  
  15.  
  16. Status of this Memo
  17.  
  18.    This memo is an internet draft. Internet Drafts are working documents
  19.    of the Internet Engineering Task Force (IETF), its Areas, and its
  20.    Working Groups. Note that other groups may also distribute working
  21.    documents as Internet Drafts.
  22.  
  23.    Internet Drafts are draft documents valid for a maximum of six
  24.    months.  Internet Drafts may be updated, replaced, or obsoleted by
  25.    other documents at any time. It is not appropriate to use Internet
  26.    Drafts as reference material or to cite them other than as a "working
  27.    draft" or "work in progress".  Please check the lid-abstracts.txt
  28.    listing contained in the internet-drafts shadow directories on
  29.    nic.ddn.mil, nnsc.nsf.net, nic.nordu.net, ftp.nisc.src.com, or
  30.    munnari.oz.au to learn the current status of any Internet Draft.
  31.  
  32. 1.  Abstract
  33.  
  34.    This memo defines an initial application of classical IP and ARP in
  35.    an Asynchronous Transfer Mode (ATM) network environment configured as
  36.    a Logical IP Subnetwork (LIS) as described in Section 5.  This memo
  37.    does not preclude the subsequent development of ATM technology into
  38.    areas other than a LIS; specifically, as single ATM networks grow to
  39.    replace many ethernet local LAN segments and as these networks become
  40.    globally connected, the application of IP and ARP will be treated
  41.    differently.  This memo considers only the application of ATM as a
  42.    direct replacement for the "wires" and local LAN segments connecting
  43.    IP end-stations ("members") and routers.  Issues raised by MAC level
  44.    bridging and LAN emulation are beyond the scope of this paper.
  45.  
  46.    This memo introduces general ATM technology and nomenclature.
  47.    Readers are encouraged to review the ATM Forum and ITU-TS (formerly
  48.    CCITT) references for more detailed information about ATM
  49.    implementation agreements and standards.
  50.  
  51.  
  52.  
  53.  
  54.  
  55. Laubach                                                         [Page 1]
  56.  
  57. DRAFT                Classical IP and ARP over ATM          October 1993
  58.  
  59.  
  60. 2.  Acknowledgment
  61.  
  62.    This memo could not have come into being without the critical review
  63.    from Jim Forster of Cisco Systems, Drew Perkins of FORE Systems, and
  64.    Bryan Lyles, Steve Deering, and Berry Kercheval of XEROX PARC.  The
  65.    concepts and models presented in [1], written by Dave Piscitello and
  66.    Joseph Lawrence, laid the structural groundwork for this work. This
  67.    document could have not been completed without the expertise of the
  68.    IP over ATM Working Group of the IETF and the ad hoc PVC committee at
  69.    the Amsterdam IETF meeting.
  70.  
  71. 3. Conventions
  72.  
  73.    The following language conventions are used in the items of
  74.    specification in this document:
  75.  
  76.    o   MUST, SHALL, or MANDATORY -- the item is an absolute requirement
  77.        of the specification.
  78.  
  79.    o   SHOULD or RECOMMEND -- this item should generally be followed for
  80.        all but exceptional circumstances.
  81.  
  82.    o   MAY or OPTIONAL -- the item is truly optional and may be followed
  83.        or ignored according to the needs of the implementor.
  84.  
  85. 4.  Introduction
  86.  
  87.    The goal of this specification is to allow compatible and
  88.    interoperable implementations for transmitting IP datagrams, ARP and
  89.    InARP requests and replies over ATM Adaptation Layer 5 (AAL5)[2,6].
  90.  
  91.    Note: this memo defines only the operation of IP and ARP over ATM,
  92.    and is not meant to describe the operation of ATM networks. Any
  93.    reference to virtual connections, permanent virtual connections, or
  94.    switched virtual connections applies only to virtual channel
  95.    connections used to support IP and ARP over ATM, and thus are assumed
  96.    to be using AAL5.  This memo places no restrictions or requirements
  97.    on virtual connections used for other purposes.
  98.  
  99.    Initial deployment of ATM provides a LAN segment replacement for:
  100.  
  101.    1)  Local area networks (e.g., Ethernets, Token Rings and FDDI).
  102.  
  103.    2)  Local-area backbones between existing (non-ATM) LANs.
  104.  
  105.    3)  Dedicated circuits or frame relay PVCs between IP routers.
  106.  
  107.  
  108.  
  109.  
  110.  
  111. Laubach                                                         [Page 2]
  112.  
  113. DRAFT                Classical IP and ARP over ATM          October 1993
  114.  
  115.  
  116.    Note: In 1), local IP routers with one or more ATM interfaces will be
  117.    able to connect islands of ATM networks.  In 3), public or private
  118.    ATM Wide Area networks will be used to connect IP routers, which in
  119.    turn may or may not connect to local ATM networks.  ATM WANs and LANs
  120.    may be interconnected.
  121.  
  122.    Private ATM networks (local or wide area) will use the private ATM
  123.    address structure specified in the ATM Forum UNI specification [9].
  124.    This structure is modeled after the format of an OSI Network Service
  125.    Access Point Address.  A private ATM address uniquely identifies an
  126.    ATM endpoint.  Public networks will use either the address structure
  127.    specified in ITU-TS recommendation E.164 or the private network ATM
  128.    address structure.  An E.164 address uniquely identifies an interface
  129.    to a public network.
  130.  
  131.    The characteristics and features of ATM networks are different than
  132.    those found in LANs:
  133.  
  134.    o   ATM provides a Virtual Connection (VC) switched environment. VC
  135.        setup may be done on either a Permanent Virtual Connection (PVC)
  136.        or dynamic Switched Virtual Connection (SVC) basis. SVC call
  137.        management signalling is performed via implementations of the
  138.        Q.93B protocol [7,9].
  139.  
  140.    o   Data to be passed by a VC is segmented into 53 octet quantities
  141.        called cells (5 octets of ATM header and 48 octets of data).
  142.  
  143.    o   The function of mapping user Protocol Data Units (PDUs) into the
  144.        information field of the ATM cell and vice versa is performed in
  145.        the ATM Adaptation Layer (AAL).  When a VC is created a specific
  146.        AAL type is associated with the VC.  There are four different AAL
  147.        types, which are referred to individually as "AAL1", "AAL2",
  148.        "AAL3/4", and "AAL5".  (Note: this memo concerns itself with the
  149.        mapping of IP and ARP over AAL5 only.  The other AAL types are
  150.        mentioned for introductory purposes only.)  The AAL type is known
  151.        by the VC end points via the call setup mechanism and is not
  152.        carried in the ATM cell header.  For PVCs the AAL type is
  153.        administratively configured at the end points when the Connection
  154.        (circuit) is set up.  For SVCs, the AAL type is communicated
  155.        along the VC path via Q.93B as part of call setup establishment
  156.        and the end points use the signaled information for
  157.        configuration.  ATM switches generally do not care about the AAL
  158.        type of VCs.  The AAL5 format specifies a packet format with a
  159.        maximum size of (64K - 1) octets of user data. Cells for an AAL5
  160.        PDU are transmitted first to last, the last cell indicating the
  161.        end of the PDU.  ATM standards guarantee that on a given VC, cell
  162.        ordering is preserved end-to-end.  NOTE: AAL5 provides a non-
  163.        assured data transfer service - it is up to higher-level
  164.  
  165.  
  166.  
  167. Laubach                                                         [Page 3]
  168.  
  169. DRAFT                Classical IP and ARP over ATM          October 1993
  170.  
  171.  
  172.        protocols to provide retransmission.
  173.  
  174.    o   ATM Forum signalling defines point-to-point and point-to-
  175.        multipoint Connection setup [9].  Multipoint-to-multipoint VCs
  176.        are not yet specified by ITU-TS or ATM Forum.
  177.  
  178.    o   An ATM Forum ATM endpoint address is either encoded as an NSAP,
  179.        address or is an E.164 Public-UNI address [9].  In some cases,
  180.        both an ATM endpoint address and an E.164 Public UNI address are
  181.        needed by an ARP client to reach another host or router.  Since
  182.        the use of ATM endpoint addresses and E.164 public UNI addresses
  183.        by ARP are analogous to the use of Ethernet addresses, the notion
  184.        of "hardware address" is extended to encompass ATM addresses in
  185.        the context of ARP, even though ATM addresses need not have
  186.        hardware significance.  ATM Forum NSAPs use the same basic format
  187.        as U.S. GOSIP NSAPs [11].  Note: ATM Forum addresses should not
  188.        be construed as being U.S.  GOSIP NSAPs addresses. They are not,
  189.        the administration is different, which fields get filled out are
  190.        different, etc.  (NSAP and NSAP address are used interchangeably
  191.        throughout this paper in referring to NSAP addresses.)
  192.  
  193.    This memo describes the initial deployment of ATM within "classical"
  194.    IP networks as a direct replacement for local area networks
  195.    (ethernets) and for IP links which interconnect routers, either
  196.    within or between administrative domains. The "classical" model here
  197.    refers to the treatment of the ATM host adapter as a networking
  198.    interface to the IP protocol stack.
  199.  
  200.    Characteristics of the classical model are:
  201.  
  202.     o  The same maximum transmission unit (MTU) size is used for all VCs
  203.        in a LIS [2].  (Refer to Section 7.)
  204.  
  205.     o  Default LLC/SNAP encapsulation of IP packets.
  206.  
  207.     o  End-to-end IP routing architecture stays the same.
  208.  
  209.     o  IP addresses are resolved to ATM addresses by use of an ARP
  210.        service within the LIS - ARPs stay within the LIS.  From a
  211.        client's perspective, the ARP architecture stays essentially the
  212.        same, consistent with current model.
  213.  
  214.     o  One IP subnet is used for many hosts and routers. Each VC
  215.        directly connects two IP members within the same LIS.
  216.  
  217.    Future memos will describe the operation of IP over ATM when ATM
  218.    networks become globally deployed and interconnected.
  219.  
  220.  
  221.  
  222.  
  223. Laubach                                                         [Page 4]
  224.  
  225. DRAFT                Classical IP and ARP over ATM          October 1993
  226.  
  227.  
  228.    The deployment of ATM into the Internet community is just beginning
  229.    and will take many years to complete. During the early part of this
  230.    period, we expect deployment to follow traditional IP subnet
  231.    boundaries for the following reasons:
  232.  
  233.     o  Administrators and managers of IP subnetworks will tend to
  234.        initially follow the same models as they currently have deployed.
  235.        The mindset of the community will change slowly over time as ATM
  236.        increases its coverage and builds its credibility.
  237.  
  238.     o  Policy administration practices rely on the security, access,
  239.        routing, and filtering capability of IP Internet gateways: i.e.
  240.        firewalls. ATM will not be allowed to "back-door" around these
  241.        mechanisms until ATM provides better management capability than
  242.        the existing services and practices.
  243.  
  244.     o  Standards for global IP over ATM will take some time to complete
  245.        and deploy.
  246.  
  247.    This memo details the treatment of the classical model of IP and ARP
  248.    over ATM. This memo does not preclude the subsequent treatment of ATM
  249.    networks within the IP framework as ATM becomes globally deployed and
  250.    interconnected; this will be the subject of future documents. This
  251.    memo does not address issues related to transparent data link layer
  252.    interoperability.
  253.  
  254. 5.  IP Subnetwork Configuration
  255.  
  256.    In the LIS scenario, each separate administrative entity configures
  257.    its hosts and routers within a closed logical IP subnetwork.  Each
  258.    LIS operates and communicates independently of other LISs on the same
  259.    ATM network. Hosts connected to ATM communicate directly to other
  260.    hosts within the same LIS. Communication to hosts outside of the
  261.    local LIS is provided via an IP router. This router is an ATM
  262.    Endpoint attached to the ATM network that is configured as a member
  263.    of one or more LISs.  This configuration may result in a number of
  264.    disjoint LISs operating over the same ATM network. Hosts of differing
  265.    IP subnets MUST communicate via an intermediate IP router even though
  266.    it may be possible to open a direct VC between the two IP members
  267.    over the ATM network.
  268.  
  269.    The requirements for IP members  (hosts, routers) operating in an ATM
  270.    LIS configuration are:
  271.  
  272.    o   All members have the same IP network/subnet number and address
  273.        mask [8].
  274.  
  275.    o   All members within a LIS are directly connected to the ATM
  276.  
  277.  
  278.  
  279. Laubach                                                         [Page 5]
  280.  
  281. DRAFT                Classical IP and ARP over ATM          October 1993
  282.  
  283.  
  284.        network.
  285.  
  286.    o   All members outside of the LIS are accessed via a router.
  287.  
  288.    o   All members of a LIS MUST have a mechanism for resolving IP
  289.        addresses to ATM addresses via ARP [3] and vice versa via
  290.        InARP[12] when using SVCs.
  291.  
  292.    o   All members of a LIS MUST have a mechanism for resolving VCs to
  293.        IP addresses via InARP [12] when using PVCs.
  294.  
  295.    o   All members within a LIS MUST be able to communicate via ATM with
  296.        all other members in the same LIS; i.e., the virtual Connection
  297.        topology underlying the intercommunication among the members is
  298.        fully meshed.
  299.  
  300.    The following list identifies a set of ATM specific parameters that
  301.    MUST be implemented in each IP station connected to the ATM network:
  302.  
  303.    o   ATM Hardware Address (atm$ha). The ATM address of the individual
  304.        IP station.
  305.  
  306.    o   ATM ARP Request Address (atm$arp-req). atm$arp-req is the ATM
  307.        address of an individual ARP server located within the LIS.  In
  308.        an SVC environment, ARP requests are sent to this address for the
  309.        resolution of target protocol addresses to target ATM addresses.
  310.        That server MUST have authoritative responsibility for resolving
  311.        ARP requests of all IP members within the LIS.  Note: if the LIS
  312.        is operating with PVCs only, then this parameter may be set to
  313.        null and the IP station is not required to send ARP requests to
  314.        the ARP server.
  315.  
  316.    It is RECOMMENDED that routers providing LIS functionality over the
  317.    ATM network also support the ability to interconnect multiple LISs.
  318.    Routers that wish to provide interconnection of differing LISs MUST
  319.    be able to support multiple sets of these parameters (one set for
  320.    each connected LIS) and be able to associate each set of parameters
  321.    with a specific IP network/ subnet number. In addition, it is
  322.    RECOMMENDED that a router be able to provide this multiple LIS
  323.    support with a single physical ATM interface that may have one or
  324.    more individual ATM endpoint addresses.  Note: this does not
  325.    necessarily mean different End System Identifiers (ESIs) when NSAPS
  326.    are used.  The last octet of an NSAP address is the NSAP Selector
  327.    (SEL) field which can be used to differentiate up to 256 different
  328.    LISs for the same ESI. (Refer to Section 5.1.3.1, "Private Networks"
  329.    in [9].)
  330.  
  331.  
  332.  
  333.  
  334.  
  335. Laubach                                                         [Page 6]
  336.  
  337. DRAFT                Classical IP and ARP over ATM          October 1993
  338.  
  339.  
  340. 6.  Packet Format
  341.  
  342.    Implementations MUST support IEEE 802.2 LLC/SNAP encapsulation as
  343.    described in [2].  LLC/SNAP encapsulation is the default packet
  344.    format for IP datagrams.
  345.  
  346.    This memo recognizes that other encapsulation methods may be used
  347.    however, in the absence of other knowledge or agreement, LLC/SNAP
  348.    encapsulation is the default.
  349.  
  350.    This memo recognizes the future deployment of end-to-end signalling
  351.    within ATM that will allow negotiation of encapsulation method on a
  352.    per-VC basis.  Signalling negotiations are beyond the scope of this
  353.    memo.
  354.  
  355. 7.  MTU Size
  356.  
  357.    The default MTU size for IP members operating over the ATM network
  358.    SHALL be 9180 octets. The LLC/SNAP header is 8 octets, therefore the
  359.    default ATM AAL5 protocol data unit size is 9188 octets [2].  In
  360.    classical IP subnets, values other than the default can be used if
  361.    and only if all members in the LIS have been configured to use the
  362.    non-default value.
  363.  
  364.    This memo recognizes the future deployment of end-to-end signalling
  365.    within ATM that will allow negotiation of MTU size on a per-VC basis.
  366.    Signalling negotiations are beyond the scope of this document.
  367.  
  368. 8.  ADDRESS RESOLUTION
  369.  
  370.    Address resolution within an ATM logical IP subnet SHALL make use of
  371.    the Address Resolution Protocol (ARP) [3] and the Inverse Address
  372.    Resolution Protocol (InARP) [12].  All IP stations are required to
  373.    support these protocols as updated and extended in this memo.  Use of
  374.    these protocols differs depending on whether PVCs or SVCs are used.
  375.  
  376. 8.1 Permanent Virtual Connections
  377.  
  378.    An IP station MUST have a mechanism (eg. manual configuration) for
  379.    determining what PVCs it has, and in particular which PVCs are being
  380.    used with LLC/SNAP encapsulation.  The details of the mechanism are
  381.    beyond the scope of this memo.
  382.  
  383.    All IP members supporting PVCs are required to use the Inverse
  384.    Address Resolution Protocol (InARP) as defined in [12] on those VCs
  385.    using LLC/SNAP encapsulation. In a strict PVC environment, the
  386.    receiver SHALL infer the relevant VC from the VC on which the InARP
  387.    request (InARP_REQUEST) or response (InARP_REPLY) was received. When
  388.  
  389.  
  390.  
  391. Laubach                                                         [Page 7]
  392.  
  393. DRAFT                Classical IP and ARP over ATM          October 1993
  394.  
  395.  
  396.    the ATM source and/or target address is unknown, the corresponding
  397.    ATM address length in the InARP packet MUST be set to zero (0)
  398.    indicating a null length, otherwise the appropriate address field
  399.    should be filled in and the corresponding length set appropriately.
  400.    InARP packet format details are presented later in this memo.
  401.  
  402.    Directly from [12]: "When the requesting station receives the InARP
  403.    reply, it may complete the ARP table entry and use the provided
  404.    address information.  Note: as with ARP, information learned via
  405.    InARP may be aged or invalidated under certain circumstances."  It is
  406.    the responsibility of each IP station supporting PVCs to re-validate
  407.    ARP table entries as part of the aging process.  See the Section 8.5
  408.    on "ARP Table Aging".
  409.  
  410. 8.2 Switched Virtual Connections
  411.  
  412.    SVCs require support for ARP in the non-broadcast, non-multicast
  413.    environment that ATM networks currently provide. To meet this need a
  414.    single ARP Server MUST be located within the LIS. This server MUST
  415.    have authoritative responsibility for resolving the ARP requests of
  416.    all IP members within the LIS.
  417.  
  418.    The server itself does not actively establish connections.  It
  419.    depends on the clients in the LIS to initiate the ARP registration
  420.    procedure.  An individual client connects to the ARP server using a
  421.    point-to-point VC. The server, upon the completion of an ATM
  422.    call/connection of a new VC specifying LLC/SNAP encapsulation, will
  423.    transmit an InARP request to determine the IP address of the client.
  424.    The InARP reply from the client contains the information necessary
  425.    for the ARP Server to build its ARP table cache. This information is
  426.    used to generate replies to the ARP requests it receives.
  427.  
  428.    The ARP Server mechanism requires that each client be
  429.    administratively configured with the ATM address of the ARP Server
  430.    atm$arp-req as defined earlier in this memo. There is to be one and
  431.    only one ARP Server operational per logical IP subnet. It is
  432.    RECOMMENDED that the ARP Server also be an IP station. This station
  433.    MUST be administratively configured to operate and recognize itself
  434.    as the ARP Server for a LIS. The ARP Server MUST be configured with
  435.    an IP address for each logical IP subnet it is serving to support
  436.    InARP requests.
  437.  
  438.    This memo recognizes that a single ARP Server is not as robust as
  439.    multiple servers which synchronize their databases correctly. This
  440.    document is defining the client-server interaction by using a simple,
  441.    single server approach as a reference model, and does not prohibit
  442.    more robust approaches which use the same client-server interface.
  443.  
  444.  
  445.  
  446.  
  447. Laubach                                                         [Page 8]
  448.  
  449. DRAFT                Classical IP and ARP over ATM          October 1993
  450.  
  451.  
  452. 8.3 ARP Server Operational Requirements
  453.  
  454.    The ARP server accepts ATM calls/connections from other ATM end
  455.    points. At call setup and if the VC supports LLC/SNAP encapsulation,
  456.    the ARP server will transmit to the originating ATM station an InARP
  457.    request (InARP_REQUEST) for each logical IP subnet the server is
  458.    configured to serve. After receiving an InARP reply (InARP_REPLY),
  459.    the server will examine the IP address and the ATM address. The
  460.    server will add (or update) the <ATM address, IP address> map entry
  461.    and timestamp into its ARP table. If the InARP IP address duplicates
  462.    a table entry IP address and the InARP ATM address does not match the
  463.    table entry ATM address and there is an open VC associated with that
  464.    table entry, the InARP information is discarded and no modifications
  465.    to the table are made. ARP table entries persist until aged or
  466.    invalidated. VC call tear down does not remove ARP table entries.
  467.  
  468.    The ARP server, upon receiving an ARP request (ARP_REQUEST), will
  469.    generate the corresponding ARP reply (ARP_REPLY) if it has an entry
  470.    in its ARP table.  Otherwise it will generate a negative ARP reply
  471.    (ARP_NAK).  The ARP_NAK response is an extension to the ARP protocol
  472.    and is used to improve the robustness of the ARP server mechanism.
  473.    With ARP_NAK, a client can determine the difference between a
  474.    catastrophic server failure and an ARP table lookup failure.  The
  475.    ARP_NAK packet format is the same as the received ARP_REQUEST packet
  476.    format with the operation code set to ARP_NAK, i.e., the ARP_REQUEST
  477.    packet data is merely copied for transmission with the ARP_REQUEST
  478.    operation code reset to ARP_NAK.
  479.  
  480.    Updating the ARP table information timeout, the short form: when the
  481.    server receives an ARP request over a VC, where the source IP and ATM
  482.    address match the association already in the ARP table and the ATM
  483.    address matches that associated with the VC, the server may update
  484.    the timeout on the source ARP table entry: i.e., if the client is
  485.    sending ARP requests to the server over the same VC that it used to
  486.    register its ARP entry, the server should examine the ARP requests
  487.    and note that the client is still "alive" by updating the timeout on
  488.    the client's ARP table entry.
  489.  
  490.    Adding robustness to the address resolution mechanism using ARP: when
  491.    the server receives an ARP_REQUEST over a VC, it examines the source
  492.    information.  If there is no IP address associated with the VC over
  493.    which the ARP request was received and if the source IP address is
  494.    not associated with any other connection, then the server will add
  495.    the <ATM address, IP address> entry and timestamp into its ARP table
  496.    and associate the entry with this VC.
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503. Laubach                                                         [Page 9]
  504.  
  505. DRAFT                Classical IP and ARP over ATM          October 1993
  506.  
  507.  
  508. 8.4 ARP Client Operational Requirements
  509.  
  510.    The ARP client is responsible for contacting the ARP server to
  511.    register its own ARP information and to gain and refresh its own ARP
  512.    entry/information about other IP members.  This means, as noted
  513.    above, that ARP clients MUST be configured with the ATM address of
  514.    the ARP server. ARP clients MUST:
  515.  
  516.    1. Initiate the VC connection to the ARP server for transmitting and
  517.    receiving ARP and InARP packets.
  518.  
  519.    2. Respond to ARP_REQUEST and InARP_REQUEST packets received on any
  520.    VC appropriately.  (Refer to Section 7, "Protocol Operation" in
  521.    [12].)
  522.  
  523.    3. Generate and transmit ARP_REQUEST packets to the ARP server and to
  524.    process ARP_REPLY and ARP_NAK packets from the server appropriately.
  525.    ARP_REPLY packets should be used to build/refresh its own client ARP
  526.    table entries.
  527.  
  528.    4. Generate and transmit InARP_REQUEST packets as needed and to
  529.    process InARP_REPLY packets appropriately.  InARP_REPLY packets
  530.    should be used to build/refresh its own client ARP table entries.
  531.    (Refer to Section 7, "Protocol Operation" in [12].)
  532.  
  533.    5. Provide an ARP table aging function to remove its own old client
  534.    ARP tables entries after a convenient period of time.
  535.  
  536.    Note: if the client does not maintain an open VC to the server, the
  537.    client MUST refresh its ARP information with the server at least once
  538.    every 20 minutes.  This is done by opening a VC to the server and
  539.    exchanging the initial InARP packets.
  540.  
  541. 8.5 ARP Table Aging
  542.  
  543.    An ARP client or server MUST have knowledge of any open VCs it has
  544.    (permanent or switched), their association with an ARP table entry,
  545.    and in particular, which VCs support LLC/SNAP encapsulation.
  546.  
  547.    Client ARP table entries are valid for a maximum time of 15 minutes.
  548.  
  549.    Server ARP table entries are valid for a minimum time of 20 minutes.
  550.  
  551.    Prior to aging (removing) an ARP table entry, all members MUST
  552.    generate an InARP_REQUEST on any open VC associated with that entry.
  553.    If an InARP_REPLY is received, that table entry is updated and not
  554.    deleted.  If there is no open VC associated with the table entry, the
  555.    entry is deleted.
  556.  
  557.  
  558.  
  559. Laubach                                                        [Page 10]
  560.  
  561. DRAFT                Classical IP and ARP over ATM          October 1993
  562.  
  563.  
  564. 8.6 ARP and InARP Packet Format
  565.  
  566.    Internet addresses are assigned independently of ATM addresses.  Each
  567.    host implementation MUST know its own IP and ATM address(es) and MUST
  568.    respond to address resolution requests appropriately.  IP members
  569.    MUST also use ARP and InARP to resolve IP addresses to ATM addresses
  570.    when needed.
  571.  
  572.    The ARP and InARP protocols have several fields that have the
  573.    following format and values:
  574.  
  575.    Data:
  576.      ar$hrd     16 bits  Hardware type
  577.      ar$pro     16 bits  Protocol type
  578.      ar$shtl     8 bits  Type & length of source ATM number (q)
  579.      ar$sstl     8 bits  Type & length of source ATM subaddress (r)
  580.      ar$op      16 bits  Operation code (request or reply)
  581.      ar$spln     8 bits  Length of source protocol address (s)
  582.      ar$thtl     8 bits  Type & length of target ATM number (x)
  583.      ar$tstl     8 bits  Type & length of target ATM subaddress (y)
  584.      ar$tpln     8 bits  Length of target protocol address (z)
  585.      ar$sha     qoctets  source ATM number
  586.      ar$ssa     roctets  source ATM subaddress
  587.      ar$spa     soctets  source protocol address
  588.      ar$tha     xoctets  target ATM number
  589.      ar$tsa     yoctets  target ATM subaddress
  590.      ar$tpa     zoctets  target protocol address
  591.  
  592.    Where:
  593.      ar$hrd  -  assigned to ATM Forum address family and is
  594.                 dd decimal (0x00nn) [4].
  595.  
  596.      ar$pro  -  see Assigned Numbers for protocol type number for
  597.                 the protocol using ARP. (IP is 0x0800).
  598.  
  599.      ar$op   -  The operation type value (decimal):
  600.                 ARP_REQUEST   = 1
  601.                 ARP_REPLY     = 2
  602.                 InARP_REQUEST = 8
  603.                 InARP_REPLY   = 9
  604.                 ARP_NAK       = ??
  605.  
  606.      ar$spln -  length in octets of the source protocol address. For
  607.                 IP ar$spln is 4.
  608.  
  609.      ar$tpln -  length in octets of the target protocol address. For
  610.                 IP ar$tpln is 4.
  611.  
  612.  
  613.  
  614.  
  615. Laubach                                                        [Page 11]
  616.  
  617. DRAFT                Classical IP and ARP over ATM          October 1993
  618.  
  619.  
  620.      ar$sha  -  source ATM number (E.164 or ATM Forum NSAP)
  621.  
  622.      ar$ssa  -  source ATM subaddress (ATM Forum NSAP)
  623.  
  624.      ar$spa  -  source protocol address
  625.  
  626.      ar$tha  -  target ATM number (E.164 or ATM Forum NSAP)
  627.  
  628.      ar$tsa  -  target ATM subaddress (ATM Forum NSAP)
  629.  
  630.      ar$tpa  -  target protocol address
  631.  
  632.    The encoding of the 8-bit type and length value for ar$shtl,
  633.    ar$sstl, ar$thtl, and ar$tstl is as follows:
  634.  
  635.      MSB   8     7     6     5     4     3     2     1   LSB
  636.         +-----+-----+-----+-----+-----+-----+-----+-----+
  637.         |  0  | 1/0 |   Octet length of address         |
  638.         +-----+-----+-----+-----+-----+-----+-----+-----+
  639.  
  640.    Where:
  641.      bit.8   (reserved) = 0  (for future use)
  642.  
  643.      bit.7   (type)     = 0  ATM Forum NSAP format
  644.                         = 1  E.164 format
  645.  
  646.      bit.6-1 (length)   = 6 bit unsigned octet length of address
  647.                           (MSB = bit.6, LSB = bit.1)
  648.  
  649.    ATM addresses in Q.93B (as defined by the ATM Forum UNI 3.0
  650.    signalling specification [9]) include a "Calling Party Number
  651.    Information Element" and a "Calling Party Subaddress Information
  652.    Element".  These Information Elements (IEs) SHOULD map to ARP/InARP
  653.    source ATM number and source ATM subaddress respectively.
  654.    Furthermore, ATM Forum defines a "Called Party Number Information
  655.    Element" and a "Called Party Subaddress Information Element". These
  656.    IEs map to ARP/InARP target ATM number and target ATM subaddress
  657.    respectively.
  658.  
  659.    The ATM Forum defines three structures for the combined use of number
  660.    and subaddress [9]:
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671. Laubach                                                        [Page 12]
  672.  
  673. DRAFT                Classical IP and ARP over ATM          October 1993
  674.  
  675.  
  676.                         ATM Number      ATM Subaddress
  677.                       --------------    --------------
  678.         Structure 1   ATM Forum NSAP         null
  679.         Structure 2       E.164              null
  680.         Structure 3       E.164         ATM Forum NSAP
  681.  
  682.    IP members MUST register their ATM endpoint address with their ARP
  683.    server using the ATM address structure appropriate for their ATM
  684.    network connection: i.e., LISs implemented over ATM LANs following
  685.    ATM Forum UNI 3.0 should register using Structure 1; LISs implemented
  686.    over an E.164 "public" ATM network should register using Structure 2.
  687.    A LIS implemented over a combination of ATM LANs and public ATM
  688.    networks may need to register using Structure 3.  Implementations
  689.    based on this memo MUST support all three ATM address structures.
  690.  
  691.    ARP and InARP requests and replies for ATM address structures 1 and 2
  692.    MUST indicate a null ATM subaddress; i.e. ar$sstl.type = 1 and
  693.    ar$sstl.length = 0 and ar$tstl.type = 1 and ar$tstl.length = 0.  When
  694.    ar$sstl.length and ar$tstl.length =0, the ar$tsa and ar$ssa fields
  695.    are not present.
  696.  
  697.    Note: the ARP packet format presented in this memo is general in
  698.    nature in that the ATM number and ATM subaddress fields SHOULD map
  699.    directly to the corresponding Q.93B fields used for ATM
  700.    call/connection setup signalling messages.  The IP over ATM Working
  701.    Group expects ATM Forum NSAPs numbers (Structure 1) to predominate
  702.    over E.164 numbers (Structure 2) as ATM endpoint identifiers within
  703.    ATM LANs.  The ATM Forum's VC Routing specification is not complete
  704.    at this time and therefore its impact on the operational use of ATM
  705.    Address Structure 3 is undefined. The ATM Forum will be defining this
  706.    relationship in the future.  It is for this reason that IP members
  707.    need to support all three ATM address structures.
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727. Laubach                                                        [Page 13]
  728.  
  729. DRAFT                Classical IP and ARP over ATM          October 1993
  730.  
  731.  
  732. 8.7 ARP/InARP Packet Encapsulation
  733.  
  734.    ARP and InARP packets are to be encoded in AAL5 PDUs using LLC/SNAP
  735.    encapsulation. The format of the AAL5 CPCS-SDU payload field for
  736.    ARP/InARP PDUs is:
  737.  
  738.                Payload Format for ARP/InARP PDUs:
  739.                +------------------------------+
  740.                |        LLC 0xAA-AA-03        |
  741.                +------------------------------+
  742.                |        OUI 0x00-00-00        |
  743.                +------------------------------+
  744.                |     Ethertype 0x08-06        |
  745.                +------------------------------+
  746.                |                              |
  747.                |      ARP/InARP Packet        |
  748.                |                              |
  749.                +------------------------------+
  750.  
  751.    The LLC value of 0xAA-AA-03 (3 octets) indicates the presence of a
  752.    SNAP header.
  753.  
  754.    The OUI value of 0x00-00-00 (3 octets) indicates that the following
  755.    two-bytes is an ethertype.
  756.  
  757.    The Ethertype value of 0x08-06 (2 octets) indicates ARP [4].
  758.  
  759.    The total size of the LLC/SNAP header is fixed at 8-octets. This
  760.    aligns the start of the ARP packet on a 64-bit boundary relative to
  761.    the start of the AAL5 CPCS-SDU.
  762.  
  763.    The LLC/SNAP encapsulation for ARP/InARP presented here is consistent
  764.    with the treatment of multiprotocol encapsulation of IP over ATM AAL5
  765.    as specified in [2] and in the format of ARP over IEEE 802 networks
  766.    as specified in [5].
  767.  
  768.    Traditionally, ARP requests are broadcast to all directly connected
  769.    IP members within a LIS. It is conceivable in the future that larger
  770.    scaled ATM networks may handle ARP requests to destinations outside
  771.    the originating LIS, perhaps even globally; issues raised by ARP'ing
  772.    outside the LIS or by a global ARP mechanism are beyond the scope of
  773.    this memo.
  774.  
  775. 9.  IP Broadcast Address
  776.  
  777.    ATM does not support broadcast addressing, therefore there are no
  778.    mappings available from IP broadcast addresses to ATM broadcast
  779.    services. Note: this lack of mapping does not restrict members from
  780.  
  781.  
  782.  
  783. Laubach                                                        [Page 14]
  784.  
  785. DRAFT                Classical IP and ARP over ATM          October 1993
  786.  
  787.  
  788.    transmitting or receiving IP datagrams specifying any of the four
  789.    standard IP broadcast address forms as described in [8].  Members,
  790.    upon receiving an IP broadcast or IP subnet broadcast for their LIS,
  791.    MUST process the packet as if addressed to that station.
  792.  
  793. 10.  IP Multicast Address
  794.  
  795.    ATM does not support multicast address services, therefore there are
  796.    no mappings available from IP multicast addresses to ATM multicast
  797.    services.  Current IP multicast implementations (i.e., MBONE and IP
  798.    tunneling, see [10]) will continue to operate over ATM based logical
  799.    IP subnets if operated in the WAN configuration.
  800.  
  801.    This memo recognizes the future development of ATM multicast service
  802.    addressing by the ATM Forum. When available and widely implemented,
  803.    the roll-over from the current IP multicast architecture to this new
  804.    ATM architecture will be straightforward.
  805.  
  806. 11.  Security
  807.  
  808.    Not all of the security issues relating to IP over ATM are clearly
  809.    understood at this time, due to the fluid state of ATM
  810.    specifications, newness of the technology, and other factors.
  811.  
  812.    It is believed that ATM and IP facilities for authenticated call
  813.    management, authenticated end-to-end communications, and data
  814.    encryption will be needed in globally connected ATM networks.  Such
  815.    future security facilities and their use by IP networks are beyond
  816.    the scope of this memo.
  817.  
  818.    There are known security issues relating to host impersonation via
  819.    the address resolution protocols used in the Internet [13].  No
  820.    special security mechanisms have been added to the address resolution
  821.    mechanism defined here for use with networks using IP over ATM.
  822.  
  823. 12.  Open Issues
  824.  
  825.    o   Interim Local Management Interface (ILMI) services will not be
  826.        generally implemented initially by some providers and vendors and
  827.        will not be used to obtain the ATM address network prefix from
  828.        the network [9].  Meta-signalling does provide some of this
  829.        functionality and in the future we need to document the options.
  830.  
  831.    o   Well known ATM address(es) for ARP servers?  It would be very
  832.        handy if a mechanism were available for determining the "well
  833.        known" ATM address(es) for the client's ARP server in the LIS.
  834.  
  835.    o   There are many VC management issues which have not yet been
  836.  
  837.  
  838.  
  839. Laubach                                                        [Page 15]
  840.  
  841. DRAFT                Classical IP and ARP over ATM          October 1993
  842.  
  843.  
  844.        addressed by this specification and which await the unwary
  845.        implementor.  For example, one problem that has not yet been
  846.        resolved is how two IP members decide which of duplicate VCs can
  847.        be released without causing VC thrashing.  If two IP stations
  848.        simultaneously established VCs to each other, it is tempting to
  849.        allow only one of these VCs to be established, or to release one
  850.        of these VCs immediately after it is established.  If both IP
  851.        stations simultaneously decide to release opposite VCs, a
  852.        thrashing effect can be created where VCs are repeatedly
  853.        established and immediately released.  For the time being, the
  854.        safest strategy is to allow duplicate VCs to be established and
  855.        simply age them like any other VCs.
  856.  
  857. REFERENCES
  858.  
  859.    [1] Piscitello, D., and Lawrence, J., "IP and ARP over the SMDS
  860.        Service", RFC1209, USC/Information Sciences Institute, March
  861.        1991.
  862.  
  863.    [2] Heinanen, Juha, "Multiprotocol Encapsulation over ATM Adaptation
  864.        Layer 5", RFC1483, USC/Information Sciences Institute, July 1993.
  865.  
  866.    [3] Plummer, D., "An Ethernet Address Resolution Protocol - or -
  867.        Converting Network Addresses to 48.bit Ethernet Address for
  868.        Transmission on Ethernet Hardware", RFC 826, MIT, November 1982.
  869.  
  870.    [4] Reynolds, J., and Postel, J., "Assigned Numbers", RFC1340, USC/
  871.        Information Sciences Institute, July 1992.
  872.  
  873.    [5] Postel, J., and Reynolds, J., "A Standard for the Transmission of
  874.        IP Datagrams over IEEE 802 Networks", RFC1042, USC/Information
  875.        Sciences Institute, February 1988.
  876.  
  877.    [6] CCITT, "Draft Recommendation I.363", CCITT Study Group XVIII,
  878.        Geneva, 19-29 January 1993.
  879.  
  880.    [7] CCITT, "Draft text for Q.93B", CCITT Study Group XI, 23 September
  881.        - 2 October 1992.
  882.  
  883.    [8] Braden, R., "Requirements for Internet Hosts -- Communication
  884.        Layers", RFC1122, USC/Information Sciences Institute, October
  885.        1989.
  886.  
  887.    [9] ATM Forum, "ATM User-Network Interface Specification Version
  888.        3.0.", ATM Forum, 480 San Antonio Road, Suite 100, Mountain View,
  889.        CA 94040, June 1993.
  890.  
  891.  
  892.  
  893.  
  894.  
  895. Laubach                                                        [Page 16]
  896.  
  897. DRAFT                Classical IP and ARP over ATM          October 1993
  898.  
  899.  
  900.    [10] Deering, S, "Host Extensions for IP Multicasting", RFC1112,
  901.        USC/Information Sciences Institute, August 1989.
  902.  
  903.    [11] Colella, Richard, and Gardner, Ella, and Callon, Ross,
  904.        "Guidelines for OSI NSAP Allocation in the Internet", RFC1237,
  905.        USC/Information Sciences Institute, July 1991.
  906.  
  907.    [12] Bradely, T., and Brown, C., "Inverse Address Resolution
  908.        Protocol", RFC1293, USC/Information Sciences Institute, January
  909.        1992.
  910.  
  911.    [13] Bellovin, Steven M., "Security Problems in the TCP/IP Protocol
  912.        Suite", ACM Computer Communications Review, Vol. 19, Issue 2, pp.
  913.        32-48, 1989.
  914.  
  915. Author's Address
  916.  
  917.    Mark Laubach
  918.    Hewlett-Packard Laboratories
  919.    1501 Page Mill Road
  920.    Palo Alto, CA 94304
  921.  
  922.    Phone: 415.857.3513
  923.    FAX:   415.857.8526
  924.    EMail: laubach@hpl.hp.com
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951. Laubach                                                        [Page 17]
  952.  
  953.